using System;
using System.Collections.Generic;
using System.Text;

namespace SharpMud.MudLib.Common.Interaction.Messaging.Act
{
    /// <summary>
    /// Encapsulates the basic functionality of message sending between characters
    /// and the environment, or characters and other characters. Represents a single message
    /// from one entity to another.
    /// </summary>
    public interface IActMessage
    {
        /// <summary>
        /// 
        /// </summary>
        KeyValuePair<string, object> GetParameters();

        /// <summary>
        /// Renders the act message as human-readable text, without any embedded
        /// text formatting information
        /// </summary>
        string Render();
    }

    public interface IFormattedActMessage : IActMessage
    {
        string Render(SharpMud.Net.Telnet.Session.TelnetSessionBase telnetSession);
    }

}
